It is the analisys of the cleaned NRW vergabe data.
The COVID-19 related tenders colected through VERGABE.NRW API are the purchases made by public bodies that were not related to hospitals or health policies in general. This is duo to a federal policy that aimed to centrilize all purchases and avoid competition among cities and Ländern.
This dataset compreends the period between 17.12.2019 and 07.01.2022.
This data has two main problems:
1 - There is no stardazation of city names. Instead of using a unique city code, officials just write down the city name or the neighborhood (Stadtteil) the field buyer_name . Making more difficult to analyze the data grouped by city. It is worth mention that other information (latitude, longiude and zip code) have more than one value to each city. The ideal is a one single code number to each buyer entity.
2 - There is data missing. This Dataset has 215 of the 396 cities, which means that 181 cities are missing. Besides, we are not sure that all purchases made by the cities included are in this dataset. Further investigation need to be done. From those cities, we only found COVID-19 related purchases for 35 of them (8% of NRW).
3 - Another huge problem is the lack of information about sellers and values. Only 4% of the procurements registred have the information about seller_name, seller_town, seller_country and result_value and the presence of this information is random. Without this important information, civil society cannot monitor basic things like comparing the value of the purchased item with purchases of the same iten in other towns, check if the company is allowed to governments or see if this company is somehow related to politicians.
4 - There is also missing information in other fields: 7% of the field procedure_typeis blank.
5 - It seems there is not much guidance for the public officials in charge of sending the information to the system. One example is the field result_description, for each some entries has only a few words and for others have detailed description of products and its use.
Due to the emergency rule setled in the beggining of the pandemic (SEE EXACT DATE), we expected that overall purchases would behave in a specific way, responding to the new needs (sanitizers, masks) and lockdown rules. However, this is not how the data behaved.
All procurements: After the end of fiscal year, in December 2019, there was a new high demand of purchases in April 2020, the highest in the whole period. This can partially be related to the fact that many offices worked in home-office mode, so there were no need to buy many supplies during the following period. However, this does not look like a general trend that deals with the expection rule (See Gr.1) . Regarding the procedure type, the majority of procurements were the open competiton type (Öffentliche Ausschreibung) and all the othe procurement types, including the 5 Ex-Post types, had the same behavior among the type.
COVID-19 related procurements: The purchases of COVID-19 related items followed the trend of the overall purchases, being higher in April 2020 and declining after that (see Gr. 7). However, 55% of the COVID-19 tenders were ex-post types, and only 30% were open competition (Öffentliche Ausschreibung). Besides, when we look at the distribution of types of procedures by time (Gr.9) we see that the ex-post purchases were higher between March and May 2021, close to the 2021's German Summer, when the conuntry was a bit opener.
According to the result_title, the two mainly itens bought were masks, schnelltests and lollitests for children (see wordcloud). Below there is also a list of public bodyes who purchased covid-19 related itens. I could not identify a interessant outcome of this.
The dataset has tenders from 2019-12-17T14:29:56.168Z until 2022-01-07T02:11:51.498Z which was the scrap date
/Users/user/opt/anaconda3/lib/python3.9/site-packages/pandas/core/arrays/datetimes.py:1143: UserWarning: Converting to PeriodArray/Index representation will drop timezone information. warnings.warn(
Shape: (36561, 27) _id object 0 (0%) NAs : CXPNY42D0ZS, CXPNY42DRDN, CXPNY42YT80, CXPNY42YWAX, CXPN created_at object 0 (0%) NAs : 2022-01-04T23:00:18.455Z, 2020-04-20T22:14:01.166Z, 2019 updated_at object 0 (0%) NAs : 2022-01-06T23:00:14.633Z, 2020-05-19T00:33:44.632Z, 2020 result_id object 0 (0%) NAs : CXPNY42D0ZS, CXPNY42DRDN, CXPNY42YT80, CXPNY42YWAX, CXPN result_title object 531 (1%) NAs : Öffnen/Verschließen von Türen/Toren aller Art im Wege de result_description object 0 (0%) NAs : ['schüsseldienste kamen im kalenderjahr 2021 zu insgesam result_procedure_type object 0 (0%) NAs : Öffentliche Ausschreibung, Öffentliche Ausschreibung, Öf result_order_type object 2621 (7%) NAs : UVGO, UVGO, OTHER, nan, UVGO, UVGO, UVGO, UVGO, UVGO, UV result_publication_date object 25888 (71%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan result_cpv_codes object 0 (0%) NAs : ['75131000-3', '75240000-0'], ['75131000-3'], ['55512000 result_buyer_name object 0 (0%) NAs : Polizeipräsidium Dortmund - ZA 13.1 - Zentrale Vergabest result_buyer_address object 9 (0%) NAs : Markgrafenstraße 102, Markgrafebstraße 102, Markgrafenst result_buyer_town object 0 (0%) NAs : Dortmund, Dortmund, Dortmund, Dortmund, Herne, Herne, He result_buyer_postal_code object 6 (0%) NAs : 44139, 44139, 44139, 44139, 44608, 44608, 44608, 44608, result_seller_name object 35101 (96%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan result_seller_town object 35101 (96%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan result_seller_country object 35101 (96%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan result_geo_lon float64 0 (0%) NAs : 7.46023, 7.46023, 7.46023, 7.46023, 8.0583, 8.0583, 8.05 result_geo_lat float64 0 (0%) NAs : 51.49958, 51.49958, 51.49958, 51.49958, 48.2167, 48.2167 result_value float64 35125 (96%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan result_created_at object 0 (0%) NAs : 2022-01-04T23:00:18.455Z, 2020-04-20T22:14:01.166Z, 2019 result_updated_at object 0 (0%) NAs : 2022-01-06T23:00:14.633Z, 2020-05-19T00:33:44.632Z, 2020 result_buyer_country object 33940 (93%) NAs : nan, nan, nan, DE, nan, nan, nan, nan, nan, nan cleaned_buyer_town object 0 (0%) NAs : dortmund, dortmund, dortmund, dortmund, herne, herne, he month_year period[M] 0 (0%) NAs : 2022-01, 2020-04, 2019-12, 2019-12, 2020-11, 2020-08, 20 simplified_procedure_type object 0 (0%) NAs : Öffentliche Ausschreibung, Öffentliche Ausschreibung, Öf type_procedure object 0 (0%) NAs : competitive, competitive, competitive, not_mentioned, no
In the beggining of the system, we have a higher value os tenders added, but the amount of tenders go up and down during the period, beeing low at january 2022 partially due to lack of days (we got this data before 15.01.2022)
7 % of the inputs did not mentioned the type of procedure (at the graph they are labeled as "not_mentioned".Circa 45 % of the inputs were Public invitation to tender (Öffentliche Ausschreibung)
['Beschränkte Ausschreibung mit Teilnahmewettbewerb', 'Beschränkte Ausschreibung mit öffentlichem Teilnahmewettbewerb', 'Ex ante Veröffentlichung', 'Ex ante Veröffentlichung (Binnenmarktrelevanz)', 'Ex ante Veröffentlichung (§ 19 Abs. 5)', 'Ex post Veröffentlichung', 'Ex post Veröffentlichung (Binnenmarktrelevanz)', 'Ex post Veröffentlichung (§ 19 Abs.2)', 'Ex post Veröffentlichung (§ 20 Abs.3)', 'Ex post Veröffentlichung (§ 30 Abs. 1)', 'Teilnahmewettbewerb', 'Verhandlungsvergabe mit öffentlichem Teilnahmewettbewerb', 'not_mentioned', 'Öffentliche Ausschreibung']
According to the OCDE report, we should see at the beggining of the pandemic an increase of the non-competitive procurements. But as we see, both types behave the same way.
Shape: (13330, 27) _id object 0 (0%) NAs : CXPNY43D5NQ, CXPNY43D626, CXPNY43DD11, CXPNY43DD12, CXP created_at object 0 (0%) NAs : 2020-11-24T23:02:58.968Z, 2020-08-17T22:01:51.564Z, 202 updated_at object 0 (0%) NAs : 2021-02-22T23:00:23.152Z, 2020-10-06T22:01:42.803Z, 202 result_id object 0 (0%) NAs : CXPNY43D5NQ, CXPNY43D626, CXPNY43DD11, CXPNY43DD12, CXP result_title object 0 (0%) NAs : Beschaffung von VMware vSphere 7 Lizenzen und Wartung, result_description object 0 (0%) NAs : ['8 x VMware vSphere 7 Enterprise Plus 1 Processor', '8 result_procedure_type object 0 (0%) NAs : Ex post Veröffentlichung (§ 30 Abs. 1), Ex post Veröffe result_order_type object 0 (0%) NAs : UVGO, UVGO, UVGO, UVGO, UVGO, UVGO, UVGO, UVGO, UVGO, U result_publication_date object 13330 (100%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan result_cpv_codes object 0 (0%) NAs : ['48000000-8'], ['90911300-9', '90911200-8'], ['7513100 result_buyer_name object 0 (0%) NAs : Gemeindeprüfungsanstalt Nordrhein-Westfalen, Gemeindepr result_buyer_address object 0 (0%) NAs : Postfach 10 18 79, Postfach 10 18 79, Postfach 10 18 79 result_buyer_town object 0 (0%) NAs : Herne, Herne, Herne, Herne, Herne, Herne, Herne, Herne, result_buyer_postal_code object 0 (0%) NAs : 44608, 44608, 44608, 44608, 44608, 44608, 44608, 44608, result_seller_name object 13330 (100%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan result_seller_town object 13330 (100%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan result_seller_country object 13330 (100%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan result_geo_lon float64 0 (0%) NAs : 8.0583, 8.0583, 8.0583, 8.0583, 8.0583, 8.0583, 8.0583, result_geo_lat float64 0 (0%) NAs : 48.2167, 48.2167, 48.2167, 48.2167, 48.2167, 48.2167, 4 result_value float64 13330 (100%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan result_created_at object 0 (0%) NAs : 2020-11-24T23:02:58.968Z, 2020-08-17T22:01:51.564Z, 202 result_updated_at object 0 (0%) NAs : 2021-02-22T23:00:23.152Z, 2020-10-06T22:01:42.803Z, 202 result_buyer_country object 13330 (100%) NAs : nan, nan, nan, nan, nan, nan, nan, nan, nan, nan cleaned_buyer_town object 0 (0%) NAs : herne, herne, herne, herne, herne, herne, herne, herne, month_year period[M] 0 (0%) NAs : 2020-11, 2020-08, 2020-04, 2020-04, 2020-04, 2020-04, 2 simplified_procedure_type object 0 (0%) NAs : ex_post, ex_post, ex_post, ex_post, ex_post, ex_post, e type_procedure object 0 (0%) NAs : non-competitive, non-competitive, non-competitive, non-
For all ex-post procedures, there is not a single record of result_value, result_seller_name, result_seller_town or result_seller_country
array(['not_mentioned'], dtype=object)
We have 1436 inputs( 3 %) where the result_value is mentioned. For all of them, there is no register of procedure type
There is no way to know why these 4% of tenders have the data.
Without data of sellers, there is no way we can do monitoring to know, for example, if a company is not allowed to sell to the government
(92, 27)
We have found only 92 inputs with the selected terms. Now we are going to look at them:
There are 35 cities with COVID-related vergabe. Which is 16 % os all cities included in the database and 8 % of all NRW cities
['Ausländer- und Flüchtlingsamt', 'Bau- und Liegenschaftsbetrieb NRW Dortmund', 'Bezirksregierung Köln', 'Bundesstadt Bonn - Referat Vergabedienste', 'Deutsche Sporthochschule Köln', 'Die Autobahn GmbH des Bundes, Niederlassung Westfalen AS Bochum', 'EGK- Entsorgungsgesellschaft Krefeld Gmb', 'Grün und Gruga', 'HSPV NRW Zentralverwaltung', 'JVA Castrop-Rauxel Zentralstelle für das Beschaffungswesen im Justizvollzug', 'JVA Geldern', 'Jobcenter Wuppertal AöR', 'Kreis Mettmann - Der Landrat, Amt 10 -Zentrale Vergabestelle-', 'Kreis Recklinghausen, Der Landrat', 'Kreis Unna', 'Kreis Unna - FB Schulen und Bildung', 'Kreispolizeibehörde Hochsauerlandkreis', 'Kreisstadt Bergheim Der Bürgermeister', 'Kreisstadt Unna', 'Landesamt für Zentrale Polizeiliche Dienste NRW', 'Landesbetrieb Straßenbau NRW - Betriebssitz Gelsenkirchen', 'Landeskriminalamt Nordrhein-Westfalen', 'Ministerium für Kinder, Familie, Flüchtlinge und Integration des Landes NRW', 'Ministerium für Schule und Bildung NRW', 'Märkischer Kreis', 'OGM Oberhausener Gebäudemanagement GmbH / Zentraleinkauf', 'Oberfinanzdirektion Nordrhein-Westfalen', 'RWTH Aachen University', 'Rhein-Sieg-Kreis', 'Rheinisch-Bergischer Kreis, Der Landrat', 'Rheinische Friedrich-Wilhelms-Universität Bonn, Abt. 5.3', 'Ruhr-Universität Bochum', 'SBO Servicebetriebe Oberhausen - Eigenbetrieb der Stadt Oberhausen / Zentraleinkauf', 'Staatskanzlei des Landes Nordrhein-Westfalen', 'Stadt Aachen - Zentrale Vergabestelle', 'Stadt Alsdorf', 'Stadt Bergisch Gladbach', 'Stadt Bochum, Referat Zentraler Einkauf', 'Stadt Bornheim', 'Stadt Essen, Zentrale Vergabestelle', 'Stadt Hamm, Bauverwaltungsamt, Zentrale Submissionsstelle', 'Stadt Köln - 30/Amt für Recht, Vergabe und Versicherungen', 'Stadt Langenfeld Rhld. - ZVS', 'Stadt Leverkusen - Fachbereich Recht und Vergabestelle - Abteilung Zentrale Vergabestelle', 'Stadt Lünen - Feuerwehr', 'Stadt Marl - Planungs- und Umweltamt', 'Stadt Pulheim', 'Stadt Recklinghausen', 'Stadt Sundern', 'Stadt Willich, Der Bürgermeister', 'StadtBetrieb Bornheim AöR', 'Stadtverwaltung Brilon', 'Universität Bielefeld', 'Universität zu Köln', 'Universitätsklinikum Münster', 'Vergabe und Beschaffungszentrum Dortmund']
| cleaned_buyer_town | result_title | |
|---|---|---|
| 25101 | aachen | 148 - COVID-Analyse |
| 20552 | aachen | Lieferung von vier Beatmungsgeräten für den städtischen Rettungsdienst |
| 21298 | alsdorf | Beschaffung von zwei Beatmungsgeräten |
| 13161 | bergheim | Beschaffung von drei Beatmungsgeräten |
| 12188 | bergisch gladbach | Medizingeräte Weinmann |
| 12054 | bergisch gladbach | Lieferung von Beatmungsgeräten |
| 12041 | bergisch gladbach | Beatmungsgeräte |
| 12014 | bergisch gladbach | 38 / 2020-20/04 Beatmung |
| 3956 | bielefeld | Anschlussbefragungen HLS-COVID-19 |
| 36455 | bochum | FFP2-Masken für Lehrkräfte an Bochumer Schulen |
| 4962 | bochum | Gehölzpflege AM Dorsten |
| 36456 | bochum | Objektbewachung in Bochum |
| 2618 | bochum | Durchführung einer Online-Befragung in 9 Ländern zu Auswirkungen von COVID-19 |
| 2727 | bochum | Lieferung von Atemschutzmasken |
| 2603 | bochum | 30.000 Stk. - Roche-SARS-CoV-2-Antigen-Selbsttest für Laien - Patiententest |
| 36234 | bonn | 20.000 FFP2-Masken |
| 36150 | bonn | Bundesstadt Bonn - Lieferung 80 Atemschutzgeräten inkl. Atemschutzmasken und Maskenbrillen |
| 36104 | bonn | Bundesstadt Bonn - 10.000 Antigen-Tests auf SARS-CoV-2 zur Eigenanwendung |
| 36050 | bonn | Bundesstadt Bonn - 50.000 Antigen-Tests auf SARS-CoV-2 zur Eigenanwendung |
| 36046 | bonn | FFP2-Masken Knüllermarkt |
| 407 | bonn | Lieferung von Covid19-Antigen-Selbsttests (5er Pack) |
| 12995 | bornheim | Lieferung von Einsatzbekleidung für die Freiwillige Feuerwehr Bornheim |
| 13013 | bornheim | Erneuerung Trinkwasserleitung Kölner Landstrasse in Bornheim-Widdig, 3. Bauabschnitt |
| 17892 | brilon | Anbau Kindergarten Altenbüren - Elektroinstallation |
| 29928 | castrop-rauxel | Beschaffung von COVID-19 AntigenSchnelltest für den Justizvollzug des Landes NRW |
| 33855 | dortmund | BLB NRW/NL DO / Bereich Dortmund / Rahmenvertrag Prüfung RLT-Anlagen_010-21-00111 |
| 33852 | dortmund | BLB NRW/NL DO / Bereich Soest/ Rahmenvertrag Prüfung RLT-Anlagen_010-21-00112 |
| 9397 | dortmund | Sicherungsdienstleistungen Bezirksverwaltungsstellen |
| 1023 | duesseldorf | Wissenschaftliche Studie zur SARS-CoV-2 Surveillance in Tageseinrichtungen für Kinder |
| 31186 | duesseldorf | Vergabe zu: 1000454510 Bombenschutzanzug Dez.54.3 |
| 31219 | duesseldorf | Vergabe zu: 1000695326 |
| 3074 | duesseldorf | Beschaffung von Moodle-Instanzen für LOGINEO NRW-LMS |
| 31267 | duesseldorf | Einwegmasken mit NRW-Logo (LPA 4) |
| 29935 | duesseldorf | Projektmanagement Pooltests-Schulen |
| 29946 | duesseldorf | Beauftragung RA zur Durchführung EU-Vergabe Selbsttests an Schulen |
| 1838 | duisburg | Schutzmasken |
| 23445 | essen | Qualifizierung zum/zur Verwaltungswirt/in Kommunaler Ordnungsdienst - Vw KOD - und daran anschließende Fortbildungen für die Mitarbeiter*innen des KOD und der ZAB |
| 23463 | essen | Rahmenvereinbarung über die Beschaffung Infektionsschutzmaterialien |
| 28923 | essen | Städtische Friedhöfe - Anlage von Wildwiesen. |
| 23498 | essen | Rahmenvereinbarung über die Lieferung von Feuerwehrhelmen mit Zubehör und Verbrauchsmaterial |
| 3095 | geldern | FFP2-Masken |
| 30063 | gelsenkirchen | Lieferung von Brillen - Kopie |
| 29657 | gelsenkirchen | Covid-19 Antigen-Schnelltests |
| 30016 | gelsenkirchen | Lieferung von Brillen |
| 7635 | hamm | Selbsttests zum Nachweis von SARS-CoV-2 zur Anwendung durch Laien |
| 7771 | hamm | Lieferung von 17 Beatmungsgeräten für den Rettungsdienst der Feuerwehr Hamm |
| 7630 | hamm | Rahmenvereinbarung zur Lieferung von Selbsttests zum Nachweis von SARS-CoV-2 zur Anwendung durch Laien |
| 7556 | hamm | Rahmenvereinbarung zur Lieferung von Selbsttests zum Nachweis von SARS-CoV-2 zur Anwendung durch Laien |
| 7537 | hamm | Rahmenvereinbarung zur Lieferung von Atemschutzmasken |
| 19076 | koeln | Lieferung von Verbrauchs- und Zubehörmaterial für das Beatmungsgerät Medu-Vent der Firma Weinmann |
| 29767 | koeln | Erwerb Lizenzen und Support für Software ENVI SARscape |
| 18843 | koeln | Freiberufliche Leistung: Erstellung eines Medienentwicklungsplanes für die Schulen in städtischer Trägerschaft |
| 194 | koeln | Mundschutz-Masken |
| 4196 | koeln | Entwicklung und Erstellung einer App zur Verarbeitung und Darstellung von Biofeedback-Daten |
| 4205 | koeln | Entwicklung und Erstellung einer App für iOS und Android zur Verarbeitung und Darstellung von Biofeedback-Daten |
| 4201 | koeln | Entwicklung und Erstellung einer App für iOS und Android zur Verarbeitung und Darstellung von Biofeedback-Daten |
| 4178 | koeln | Online-Befragungsprojekte |
| 12949 | krefeld | Reinigung der RRA |
| 23778 | langenfeld (rhld.) | Lieferung von FFP2- Masken für Schulen |
| 23770 | langenfeld (rhld.) | Lieferung von FFP2- Masken und OP-Masken Typ II für Schulen, Landespersonal |
| 13718 | leverkusen | 195-2021, Lieferung von Software-Lizenzen/Codes CCSV WEINMANN für bestehende Altgeräte, Feuerwehr Stadt Leverkusen, Edith-Weyde-Str. 12, 51373 Leverkusen |
| 17229 | luedenscheid | Lieferung von 6 Beatmungsgeräten Medumat Standard 2 (Weinmann) |
| 10765 | luenen | Beschaffung Medizintechnik - Lieferung von 6 Beatmungsgeräten |
| 28085 | marl | Drei Beatmungsgeräte Medumat Standard 2 für die Feuerwehr der Stadt Marl |
| 30227 | meschede | Raumluftreiniger - Kopie |
| 34248 | mettmann | SAFECARE One Step Rapid Test COVID-19 |
| 34205 | mettmann | HotGen SARS-CoV-2 Antigen Schnelltest - Laientest |
| 3514 | muenster | Dienstleistung Covid-Analysen |
| 3576 | muenster | Dozententätigkeit für Vorbreitungskurse der Kenntnisprüfung von Ärztinnen und Ärzten |
| 3513 | muenster | Dienstleistung Covid-Analysen |
| 4081 | muenster | Corona-Antigen-Tests zur Laienanwendung |
| 3515 | muenster | Dienstleistung Covid-Analysen |
| 3517 | muenster | Dienstleistungen Covid-Analysen |
| 25994 | oberhausen | Lieferung von drei Beatmungsgeräten |
| 26092 | oberhausen | FFP2-Masken für die Feuerwehr Oberhausen |
| 26048 | oberhausen | FFP2-Masken für Oberhausener Schulen |
| 25974 | oberhausen | Aufrüstung von 4 Beatmungsgeräten |
| 34925 | pulheim | Brandschutzbekleidung |
| 6641 | recklinghausen | Kauf von CE-zertifizierten FFP2-Masken |
| 6507 | recklinghausen | Kauf von CE-zertifizierten FFP2-Masken für Lehrkräfte |
| 6326 | recklinghausen | Lieferung von Schnelltests |
| 6137 | recklinghausen | Beschaffung von FFP2 Masken für Lehrkräfte und sonstiges Landespersonal |
| 14559 | siegburg | Lolli-Tests an Kindertagesstätten |
| 14502 | siegburg | Lolli-Tests an Kindertagesstätten |
| 23402 | sundern (sauerland) | Prüftechnik Atemschutzwerkstatt |
| 6849 | unna | Durchführung von Covid-19 Mitarbeitertestungen - Bekanntmachung vergebener Auftrag |
| 6869 | unna | Auftragsbekanntmachung Beschaffung von FFP2-Masken |
| 10489 | unna | Beschaffung von FFP2 Masken für Schulpersonal |
| 10408 | unna | Beschaffung von FFP2 und OP-Masken |
| 6854 | unna | Lieferung FFP2-/OP Masken |
| 12557 | willich | SARS-CoV-2 Lolli-Pool-PCR-Testung in Kindertagesstätten der Stadt Willich |
| 13214 | wuppertal | Rahmenvereinbarung Schnelltest SarS-CoV-2 |
It doesn't say much.
55% of the tenders were ex-post type.
Let's see if the ex-post ones were mostly by the beggining of the pandemic
We see that in May 2021 it was the highest rate of purchases made by ex-post procedures. The purchases made in this dataset are not for hospitals, but for government bodies. Particularly, I don't see why july 2021 would be the moment with the most ex-post procurements.